آموزش ساخت بازی سه بعدی به زبان Basic با دارک بیسیک Dark Basic تهیه و آموزش نرم افزار دارک بیسیک |
|||
شنبه 24 فروردين 1392برچسب:, :: 1:2 :: نويسنده : ابوالفضل
این فصل شامل دستوراتی برای کنترل صفحه نمایشگر ( رزولوشن : مختصات طولی و عرضی ) و همچنین حالت پنجره ای که بازی در آن اجرا می شود ، می باشد .
دستور PERFORM CHECKLIST FOR GRAPHICS CARDS با این سلسله از دستورات می توانیم تعداد و نام کارت های گرافیکی شناخته شده توسط کامپیوتر ( که به کامپیوتر وصل شده اند ) را بدست آوریم . مانند مثال زیر :
Perform Checklist For Graphics Cards "Print "Graphics Cards ()For T = 1 To CheckList Quantity (Print T;":"+CheckList String$(T Next T Wait Key
دستور PERFORM CHECKLIST FOR DISPLAY MODES با این سلسله از دستورات می توانیم تعداد حالت های پشتیبانی شونده از مختصات طولی و عرضی ( رزولوشن صفحه نمایش ) را بدست آوریم . مثلا کامپیوتر ما ممکن است از چندین رزولوشن مانند 480*640 و 1280*1024 و 600*800 و 768*1024 و ... برای مشخص کردن تعداد نقطه های طولی و عرضی برای صفحه ی نمایش پشتیبانی کند . ولی کامپیوتر دیگر که از نوع لپ تاپ است فقط از رزولوشن 1280*1024 ( یعنی تعداد 1024 نقطه در عرض و 1280 نقطه در طول ) پشتیبانی می کند . این سلسله از دستورات بطور خودکار در هر کامپیوتر تعداد حالت ها را بدست می آورند . مانند مثال زیر :
Perform Checklist For Display Modes "Print "Display Modes ()For T = 1 To CheckList Quantity (Print "Mode ";T;" : "+CheckList String$(T Next T Wait Key
با اجرای این مثال برای هر حالت موجود ، طول و عرض و عمق رنگ ( 16 بیت و 32 بیت ) مربوط به آن ، چاپ خواهد شد .
دستور SET DISPLAY MODE قبلا برای تنظیم مختصات طولی وعرضی ( رزولوشن ) صفحه ی نمایشگر از پنجره ی Project Maneger استفاده می کردیم . با این دستور ، می توانیم حین اجرای برنامه ، رزولوشن صفحه ی نمایشگر ( Monitor ) را تغییر دهیم . مانند دستورالعمل زیر :
SET DISPLAY MODE Width,Height,Depth
طبق این دستورالعمل به جای Width مختصات طولی صفحه نمایشگر ( تعداد نقات از چپ به راست صفحه ) و به جای Height مختصات عرضی صفحه نمایشگر (تعداد نقات از بالا به پایین صفحه ) و به جای Depth عمق رنگ صفحه نمایشگر ( 16 بیت یعنی تعداد رنگ های کم و 32 بیت یعنی تعداد رنگ های زیاد که حدود 16 میلیون رنگ می باشد ) را مشخص می کنیم . مانند مثال زیر :
Set Display Mode 800,600,32 Wait Key
در این مثال ، تعداد نقات طولی 800 و تعداد نقات عرضی 600 با بالاترین تعداد رنگ ها ( 32 بیت معادل 16777216 رنگ ) مشخص شدند .
نکته : همیشه از سایز های استاندارد برای این دستور استفاده کنید . مانند 768*1024 و 1280*1024 و 600*800 و 480*640 و از این قبیل .
تابع CHECK DISPLAY MODE برای آنکه بفهمیم آیا نمایشگر توانایی قرار گرفتن در رزولوشن پیشنهادی ما را دارد یا نه از تابعCHECK DISPLAY MODE استفاده می کنیم . طول و عرض مختصات پیشنهادی و همچنین عمق رنگ ( 16 و یا 32 بیت ) را وارد تابع می کنیم . اگر تابع عدد یک را برگرداند ، معلوم می شود که قابلت قرار گرفتین در این مختصات و رنگ را دارد و اگر مقدار صفر برگردانده شود ، یعنی توانایی قرار گرفتن در چنین مختصاتی را ندارد . مانند مثال زیر :
"Print "Please Wait To Change Resolotion To 1024*768,32 Wait 5000 If Check Display Mode(1024,768,32) = 1 Set Display Mode 1024,768,32 "Print "Change Successfully Else "Print "Not Change EndIf Wait Key
دستور SET WINDOW ON این دستور صفحه ی اجرای بازی را به حالت پنجره تبدیل می کند . که می توان آن را حرکت داد و یا بزرگ و کوچک کرد . مانند مثال زیر .
Set Window On "Print "Window Mode Is On Wait key
دستور SET WINDOW OFF اگر با استفاده از دستور قبلی (SET WINDOW ON ) ، صفحه ی اجرای بازی را به حالت پنجره درآورده باشیم ، با این دستور می توانیم صفحه را به حالت عادی درآوریم . مانند مثال زیر :
Set Window On "... Print "Window Mode Is On . Please Wait Wait 2000 Set Window Off "Cls : Print "Window Mode Is Off Wait key
دستور SET WINDOW TITLE با این دستور می توانیم برای پنجره ی بازی یک تیتر ( عنوان در بالای پنجره ) قرار دهیم . مانند مثال زیر :
Set Window On "Set Window Title "MY WINDOW TEXT Wait 2000
با اجرای این مثال عبارت MY WINDOW TEXT در بالاترین قسمت پنجره یعنی نوار عنوان قرار خواهد گرفت .
دستور SET WINDOW SIZE با این دستور می توانیم طوع و ارتفاع پنجره ای که بازی در آن اجرا می شود را ، مشخص کنیم . مانند دستورالعمل زیر :
SET WINDOW SIZE Width,Height
طبق این دستورالعمل به جای Width اندازه ی طول پنجره و به جای Height اندازه ی ارتفاع پنجره را قرار می دهیم . مانند مثال زیر :
Set Window On Print "Please Wait To Sizable Window ." : Wait 2000 : Cls Set Window Size 500,400 Wait Key
دستور MINIMIZE WINDOW این دستور اندازه ی صفحه ی اجرای بازی را به حداقل اندازه ممکن می رساند . یعنی تنها عنوان آن در نوار وظیفه ی ویندوز قابل مشاهده خواهد بود . مانند مثال زیر :
Minimize Window Wait key
دستور MAXIMIZE WINDOW این دستور اندازه ی صفحه ی اجرای بازی را به بیشترین اندازه ممکن می رساند . یعنی به اندازه ی کل صفحه ی نمایشگر . مانند مثال زیر :
Minimize Window Wait 2000 Maximize Window Wait key
دستور RESTORE WINDOW این دستور پنجره ی اجرای بازی را از حالت حداکثر و یا حداقل به حالت معمولی تبدیل می کند . مانند مثال زیر :
Set Window On Maximize Window Wait 2000 Restore Window Wait Key
دستور HIDE WINDOW و دستور SHOW WINDOW با دستور HIDE WINDOW می توانیم صفحه ی اجرای بازی را مخفی و با دستور SHOW WINDOW می توانیم آن را دوباره آشکار کنیم . مانند مثال زیر :
Set Window On Wait 2000 Hide Window Wait 2000 Show Window Wait Key
دستور SET WINDOW POSITION اگر صفحه ی اجرای بازی توسط دستور Set Window On بصورت پنجره درآمده باشد ، با این دستور می توانیم فاصله ی پنجره ی بازی را از بالا و از سمت چپ صفحه ی نمایش ، تنظیم کنیم . مانند دستورالعمل زیر :
SET WINDOW POSITION X,Y
طبق این دستورالعمل به جای X فاصله ی پنجره ی بازی تا قسمت چپ صفحه ی نمایشگر و به جای Y فاصله ی پنجره ی بازی تا قسمت بالای صفحه ی نمایشگر را قرار می دهیم . مانند مثال زیر :
Set Window On SET WINDOW POSITION 100,100 Wait Key
تابع SCREEN WIDTH و تابع SCREEN HEIGHT و تابع SCREEN DEPTH تابع ()Screen Width تعداد نقات تشکیل دهنده ی طول صفحه ی اجرای بازی و تابع ()Screen Height تعداد نقاط تشکیل دهنده ی ارتفاع صفحه ی اجرای بازی و تابع ()Screen Depth مقدار رنگ های تشکیل دهنده ی صفحه ی اجرای بازی ( 16 بیت و یا 32 بیت ، که 32 بیت همان 16777216 رنگ می باشد ) را برمی گرداند . مانند مثال زیر :
Set Display Mode 800,600,32 (()Print "Screen Width = " + Str$(Screen Width (()Print "Screen Height = " + Str$(Screen Height (()Print "Screen Depth = " + Str$(Screen Depth Wait Key
تابع SCREEN FPS این تابع تعداد فریم های اجرای بازی را در هر ثانیه را برمی گرداند . مانند مثال زیر :
Sync On Sync Rate 45 Do Sync (()Print "Screen Fps = " + Str$(Screen fps Loop نظرات شما عزیزان:
موضوعات آخرین مطالب آرشيو وبلاگ پیوندهای روزانه پيوندها
![]() نويسندگان |
|||
![]() |